#ifndef __GAMEOBJECTS_H
#define __GAMEOBJECTS_H

#include <SFML/Graphics.hpp>
#include <iostream>
#include <string>
#include <vector>
#include <pugixml.hpp>

using namespace std;

// Our Game Objects class
class gameObjects
{
public:
	gameObjects();
	~gameObjects();

	void printObjectVariables();
	void init();
	void think();
	
//private:
	int x;
	int y;
	int width;
	int height;

	bool colorkey;
	unsigned char r;
	unsigned char g;
	unsigned char b;
	unsigned char a;

	int radius;
	float currentRotation;
	float rotationSpeed;
	float curRotationSpeed;
	float rotationAngle;
	float rotationMinAngle;
	float rotationMaxAngle;

	sf::RectangleShape rshape;
	sf::CircleShape cshape;
	sf::IntRect iretc;
	sf::FloatRect frect;
	sf::Image image;
	sf::Texture texture;
	sf::Sprite sprite;

	bool solid;
	bool affectedByGravity;
	bool hurtsOnTouch;
	bool visible;
	bool hasScript;
	bool rotating;

	string imgLocation;
	string luaLocation;
	string gofile;
	string objectCategory;
};

#endif